package cn.kimming.wms.dao;

import java.util.List;

import cn.kimming.wms.query.QueryObject;

public interface IGenericDAO<T> {
	void save(T obj);

	void update(T obj);

	void delete(T obj);

	T get(Long id);

	List<T> list();
	
	List<T> query(QueryObject qo);
	
	/**
	 * 传入条件和占位符参数查询结果集(不带分页)
	 * @return 返回指定结果集,没有则返回空对象集
	 */
	List<T> queryForList(String condition,Object... args);
	
	/**
	 * 传入条件和占位符参数查询单个对象(不带分页)
	 * @return 返回指定单个对象,没有则返回null
	 */
	T queryForObject(String condition,Object... args);

}
